var Menu = {
    id: "menuTable",
    table: null,
    layerIndex: -1,
    init:function(){
    	$("#submit").click(function(){
    		Menu.save();
    	});
    },
    reload: function () {
    	Menu.table.refresh();
    	$("#detail").hide();
      	$("#table").show();
    },
    newAdd:function(){
    	$("#table").hide();
      	$("#detail").show();
    },
    update:function(){
    	$("#table").hide();
      	$("#detail").show();
    },
    save:function(){
	    if(Menu.validator()){
	       return;
	    }

    	alert('操作成功', function(){
    		 Menu.reload();
        });
    },
    validator: function () {
    	var name = $("input[name='name']").val();
    	var parentId = $("input[name='parent.id']").val();
    	var parentName = $("input[name='parent.name']").val();
    	var url = $("input[name='url']").val();
    	var permission = $("input[name='permission']").val();
    	var order = $("input[name='order']").val();
    	var icon = $("input[name='icon']").val();
    	
        if(isBlank(name)){
            alert("菜单名称不能为空");
            return true;
        }
        //菜单
        if(vm.menu.type === 1 && isBlank(vm.menu.url)){
            alert("菜单URL不能为空");
            return true;
        }
    }
};
Menu.initColumn = function () {
    var columns = [
        {field: 'selectItem', radio: true},
        {title: '菜单编码', field: 'id', visible: false, align: 'center', valign: 'middle', width: '320px'},
        {title: '菜单名称', field: 'name', align: 'center', valign: 'middle', sortable: true, width: '180px'},
        {title: '上级菜单', field: 'parentName', align: 'center', valign: 'middle', sortable: true, width: '100px'},
        {title: '图标', field: 'icon', align: 'center', valign: 'middle', sortable: true, width: '80px', formatter: function(item, index){
            return item.icon == null ? '' : '<i class="'+item.icon+' fa-lg"></i>';
        }},
        {title: '排序号', field: 'orderNum', align: 'center', valign: 'middle', sortable: true, width: '100px'},
        {title: '菜单URL', field: 'url', align: 'center', valign: 'middle', sortable: true, width: '160px'},
        {title: '授权标识', field: 'perms', align: 'center', valign: 'middle', sortable: true}]
    return columns;
};

$(function () {
    var colunms = Menu.initColumn();
    var table = new TreeTable(Menu.id, "menulist", colunms);
    table.setExpandColumn(2);
    table.setIdField("id");
    table.setCodeField("id");
    table.setParentCodeField("parentId");
    table.setExpandAll(false);
    table.setHeight($('iframe, window.parent.document').height());
    table.init();
    Menu.table = table;
    Menu.init();
});


var setting = {
    data: {
        simpleData: {
            enable: true,
            idKey: "id",
            pIdKey: "parent.id",
            rootPId: -1
        },
        key: {
            url:"nourl"
        }
    }
};
var ztree;

//var vm = new Vue({
//    el:'#rrapp',
//    data:{
//        showList: true,
//        title: null,
//        menu:{
//            parentName:null,
//            parentId:0,
//            type:1,
//            orderNum:0
//        }
//    },
//    methods: {
//        getMenu: function(menuId){
//            //加载菜单树
//            $.get(baseURL + "sys/menu/select", function(r){
//                ztree = $.fn.zTree.init($("#menuTree"), setting, r.menuList);
//                var node = ztree.getNodeByParam("menuId", vm.menu.parentId);
//                ztree.selectNode(node);
//
//                vm.menu.parentName = node.name;
//            })
//        },
//        add: function(){
//            vm.showList = false;
//            vm.title = "新增";
//            vm.menu = {parentName:null,parentId:0,type:1,orderNum:0};
//            vm.getMenu();
//        },
//        update: function () {
//            var menuId = getMenuId();
//            if(menuId == null){
//                return ;
//            }
//
//            $.get(baseURL + "sys/menu/info/"+menuId, function(r){
//                vm.showList = false;
//                vm.title = "修改";
//                vm.menu = r.menu;
//
//                vm.getMenu();
//            });
//        },
//        del: function () {
//            var menuId = getMenuId();
//            if(menuId == null){
//                return ;
//            }
//
//            confirm('确定要删除选中的记录？', function(){
//                $.ajax({
//                    type: "POST",
//                    url: baseURL + "sys/menu/delete",
//                    data: "menuId=" + menuId,
//                    success: function(r){
//                        if(r.code === 0){
//                            alert('操作成功', function(){
//                                vm.reload();
//                            });
//                        }else{
//                            alert(r.msg);
//                        }
//                    }
//                });
//            });
//        },
//        saveOrUpdate: function () {
//            if(vm.validator()){
//                return ;
//            }
//
//            var url = vm.menu.menuId == null ? "sys/menu/save" : "sys/menu/update";
//            $.ajax({
//                type: "POST",
//                url:  baseURL + url,
//                contentType: "application/json",
//                data: JSON.stringify(vm.menu),
//                success: function(r){
//                    if(r.code === 0){
//                        alert('操作成功', function(){
//                            vm.reload();
//                        });
//                    }else{
//                        alert(r.msg);
//                    }
//                }
//            });
//        },
//        menuTree: function(){
//            layer.open({
//                type: 1,
//                offset: '50px',
//                skin: 'layui-layer-molv',
//                title: "选择菜单",
//                area: ['300px', '450px'],
//                shade: 0,
//                shadeClose: false,
//                content: jQuery("#menuLayer"),
//                btn: ['确定', '取消'],
//                btn1: function (index) {
//                    var node = ztree.getSelectedNodes();
//                    //选择上级菜单
//                    vm.menu.parentId = node[0].menuId;
//                    vm.menu.parentName = node[0].name;
//
//                    layer.close(index);
//                }
//            });
//        },
//        reload: function () {
//            vm.showList = true;
//            Menu.table.refresh();
//        },
//        validator: function () {
//            if(isBlank(vm.menu.name)){
//                alert("菜单名称不能为空");
//                return true;
//            }
//
//            //菜单
//            if(vm.menu.type === 1 && isBlank(vm.menu.url)){
//                alert("菜单URL不能为空");
//                return true;
//            }
//        }
//    }
//});



function getMenuId () {
    var selected = $('#menuTable').bootstrapTreeTable('getSelections');
    if (selected.length == 0) {
        alert("请选择一条记录");
        return false;
    } else {
        return selected[0].id;
    }
}

 